package w83b.w83bOperacionesInternas.w83bMantenimientos.w83bVoces;

import org.apache.commons.lang.StringUtils;
import w83b.w83bBeans.W83bVocesBean;
import w83b.w83bUtilidades.W83bUtilidadesComunes;
import w83b.w83bUtilidadesComunes.W83bClsConstantes;
import es.ejie.frmk.negocio.operacioninterna.Q70OperacionInterna;
import es.ejie.frmk.negocio.operacioninterna.Q70OperacionInternaConfigBean;
import es.ejie.frmk.negocio.operacioninterna.Q70OperacionInternaErrors;
import es.ejie.frmk.presentacion.sesiondatos.Q70ContextoEJIE;
/**
 * 
 * @author jrgil
 *
 */
public class W83bMovimientoVocesOIAction extends Q70OperacionInterna{
	/**
	 * preProcessMappingEntrada
	 * @param contexto a
	 * @param configBean a
	 * @param errors a
	 * @throws Exception e
	 */				
	protected void preProcessMappingEntrada(Q70ContextoEJIE contexto, Q70OperacionInternaConfigBean configBean, Q70OperacionInternaErrors errors) throws Exception{				
		
		W83bVocesBean vocesBean = (W83bVocesBean)contexto.get("w83bVocesNuevoBean");//NOPMD
		vocesBean.setModo((String)contexto.get("modoPantalla"));
		super.preProcessMappingEntrada(contexto, configBean, errors);	
	
	}
	/**
	 * postProcessMappingSalida
	 * @param contexto a
	 * @param errors a
	 * @throws Exception e
	 */
	protected void postProcessMappingSalida(Q70ContextoEJIE contexto, Q70OperacionInternaErrors errors) throws Exception {
		
		W83bVocesBean vocesBean = (W83bVocesBean)contexto.get("w83bVocesNuevoBean");//NOPMD
		String resultado = (String)contexto.get("w83bResultado");//NOPMD
		if("-1".equals(resultado)){
			W83bUtilidadesComunes.anyadirMensajeErrorAplicacion(errors, "error.mensaje.existeVozYTipoVoz", (String)contexto.get(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
			if(StringUtils.isEmpty(vocesBean.getDescVoz())){
				W83bUtilidadesComunes.anyadirMensajeErrorAplicacion(errors, "error.mensaje.descRegistro", (String)contexto.get(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
			}
		}else if("-2".equals(resultado)){
			W83bUtilidadesComunes.anyadirMensajeErrorAplicacion(errors, "error.mensaje.descRegistro", (String)contexto.get(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
		}else if("-3".equals(resultado)){
			if(StringUtils.isEmpty(vocesBean.getDescVoz())){
				W83bUtilidadesComunes.anyadirMensajeErrorAplicacion(errors, "error.mensaje.descRegistro", (String)contexto.get(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
			}
			W83bUtilidadesComunes.anyadirMensajeErrorAplicacion(errors, "error.mensaje.descRegistro", (String)contexto.get(W83bClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
		}
		else{
			W83bVocesBean w83bVocesNuevoBean = (W83bVocesBean)contexto.get("w83bVocesNuevoBean");//NOPMD
			if (w83bVocesNuevoBean.getBaja()!=null&&!"".equals(w83bVocesNuevoBean.getBaja())){
				w83bVocesNuevoBean.setBaja(W83bClsConstantes.BAJA);
			}
			contexto.set(W83bClsConstantes.CONSTANTE_MENSAJES_APLICACION_NO_ERROR, "comun.mensaje.bdActualizadaOk");
			contexto.set("modoPantalla",W83bClsConstantes.MODO_EDICION);
			contexto.set("strTitleKey","comun.voces.editarVoces");
		}


		super.postProcessMappingSalida(contexto, errors);
	}
	
}
